#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <math.h>

////体脂的计算
//int main()
//{
//    double n = 0;
//    double m = 0;
//    scanf("%lf %lf", &n, &m);
//    m = m / 100;
//
//    printf("%.2lf\n", n / (m * m));
//    return 0;
//}

//
////三角形面积和周长
//int main()
//{
//    double a = 0, b = 0, c = 0;
//    scanf("%lf %lf %lf", &a, &b, &c);
//    double sc = a + b + c;
//    double p = sc / 2;
//    double ss = sqrt(p * (p-a) * (p-b) * (p-c));
//
//    printf("circumference=%.2lf area=%.2lf", sc, ss);
//    return 0;
//}



////球的体积
//int main()
//{
//    double V = 0.0;
//    double pai = 3.1415926;
//    double n = 0.0;
//    scanf("%lf", &n);
//    V = 4.0 / 3 * pai * n * n * n;
//    printf("%.3lf\n", V);
//
//    return 0;
//}

//
////输出成绩
//int main()
//{
//    int a, b, c;
//    scanf("%d %d %d", &a, &b, &c);
//
//    printf("score1=%d,score2=%d,score3=%d", a, b, c);
//    return 0;
//}


////变种水仙花
//int main()
//{
//	int i = 0;
//	for (i=10000; i<=99999; i++)
//	{
//		int j = 0;
//		int sum = 0;
//
//		for (j=10;j<=10000;j*=10)
//		{
//			sum += (i / j) * (i % j);
//		}
//		if (sum == i)
//		{
//			printf("%d ", sum);
//		}
//	}
//
//	return 0;
//}



////kiki算数
//int main()
//{
//    int n = 0;
//    int m = 0;
//
//    scanf("%d %d", &n, &m);
//
//    int sum = (n + m) % 100;
//    printf("%d", sum);
//
//    return 0;
//}


////时间转换
//int main()
//{
//    int seconds = 0;
//    scanf("%d", &seconds);
//
//    int h = 0;
//    int f = 0;
//    int m = 0;
//
//    // 1小时 == 3600秒
//    h = seconds / 60 / 60;
//    f = seconds / 60 % 60;
//    m = seconds % 60;
//
//    printf("%d %d %d", h, f, m);
//
//    return 0;
//}




////总成绩和平均分
//int main()
//{
//	float a = 0;
//	float b = 0;
//	float c = 0;
//	scanf("%f %f %f", &a, &b, &c);
//	float sum = a + b + c;
//	float ret = sum / 3;
//
//	printf("%.2f %.2f", sum, ret);
//
//	return 0;
//}


////BC30   kiki和酸奶
//int main()
//{
//    int n = 0;
//    int h = 0;
//    int m = 0;
//
//    while (scanf("%d %d %d",&n,&h,&m)!=EOF)
//    {
//        if (m % h > 0)
//        {
//            printf("%d\n", n - m/h -1);
//        }
//        else
//        {
//            printf("%d\n", n - m/h);
//        }
//    }
//
//    return 0;
//}



////进制a+b
//int main()
//{
//    int a, b;
//    scanf("%0x %o", &a, &b);
//    printf("%d\n", a + b);
//    return 0;
//}



////BC37 网购
//int main()
//{
//	float m = 0;
//	int y = 0;
//	int r = 0;
//	int q = 0;
//	float ret = 0;
//	scanf("%f %d %d %d", &m, &y, &r, &q);
//	if (y == 11 && r == 11)
//	{
//		ret = m * 0.7;
//	}
//	else if (y == 12 && r == 12)
//	{
//		ret = m * 0.8;
//	}
//	else
//	{
//		ret = m;
//	}
//
//	if (q == 1)
//	{
//		ret = ret - 50;
//	}
//
//	if (ret >= 0)
//	{
//		printf("%.2f", ret);
//	}
//	else {
//		printf("0\n");
//	}
//
//	return 0;
//}




////争夺前五名
//int main()
//{
//	int n = 0;
//	int arr[50] = { 0 };
//	scanf("%d",&n);
//
//	int i = 0;
//	for(i = 0; i < n; i++)
//	{
//		scanf("%d", &arr[i]);
//	}
//
//	for (i = 0; i < n; i++)
//	{
//		int j = 0;
//		int tmp = 0;
//		for (j = 0; j < n-1-i; j++)
//		{
//			if (arr[j] < arr[j+1])
//			{
//				tmp = arr[j];
//				arr[j] = arr[j + 1];
//				arr[j + 1] = tmp;
//			}
//		}
//	}
//
//	for (i = 0; i < 5; i++)
//	{
//		printf("%d ", arr[i]);
//	}
//
//	return 0;
//}



//社长竞选
int main()
{

	char arr[1000] = {0};
	int ch = 0;
	int ret = 0;
	while (((ch = getchar()) != '0') && ch != EOF)
	{
		if (ch == 'A')
		{
			ret++;
		}
		else if (ch == 'B')
		{
			ret--;
		}
	}
	if (ret==0)
	{
		printf("E\n");
	}
	else if (ret > 0)
	{
		printf("A\n");
	}
	else {
		printf("B\n");
	}

	return 0;
}